package com.yzkj.siot.facade;

import com.yzkj.siot.base.IFacade;
import com.yzkj.siot.domain.TenantDevice;
import com.yzkj.siot.vo.RadioDataItem;

import java.util.List;

public interface DeviceFacade extends IFacade<TenantDevice, TenantDevice> {

    /**
     * 获取产品下属设备的所占比例
     *
     * @return {@link RadioDataItem}
     */
    List<RadioDataItem> queryDeviceOfProductForRadio();

    /**
     * 根据设备唯一编码获取设备信息
     *
     * @param uniqueCode 设备唯一编码
     * @return {@link TenantDevice}
     */
    TenantDevice queryOneByUniqueCode(String uniqueCode);

    /**
     * 根据Ip获取设备信息
     *
     * @param deviceIpAddr 设备Ip地址
     * @return {@link TenantDevice}
     */
    TenantDevice queryOneByIp(Integer tenantId, String deviceIpAddr);
}
